Expand description
? formatting.
Debug should format the output in a programmer-facing, debugging context.
Generally speaking, you should just derive a Debug implementation.
When used with the alternate format specifier #?, the output is pretty-printed.
For more information on formatters, see the module-level documentation.
This trait can be used with #[derive] if all fields implement Debug. When
derived for structs, it will use the name of the struct, then {, then a
comma-separated list of each field’s name and Debug value, then }. For
enums, it will use the name of the variant and, if applicable, (, then the
Debug values of the fields, then ).
Stability
Derived Debug formats are not stable, and so may change with future Rust
versions. Additionally, Debug implementations of types provided by the
standard library (libstd, libcore, liballoc, etc.) are not stable, and
may also change with future Rust versions.
Examples
Deriving an implementation:
#[derive(Debug)]
struct Point {
x: i32,
y: i32,
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin:?}"), "The origin is: Point { x: 0, y: 0 }");Manually implementing:
use std::fmt;
struct Point {
x: i32,
y: i32,
}
impl fmt::Debug for Point {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_struct("Point")
.field("x", &self.x)
.field("y", &self.y)
.finish()
}
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin:?}"), "The origin is: Point { x: 0, y: 0 }");There are a number of helper methods on the Formatter struct to help you with manual
implementations, such as debug_struct.
Types that do not wish to use the standard suite of debug representations
provided by the Formatter trait (debug_struct, debug_tuple,
debut_list, debug_set, debug_map) can do something totally custom by
manually writing an arbitrary representation to the Formatter.
impl fmt::Debug for Point {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(f, "Point [{} {}]", self.x, self.y)
}
}Debug implementations using either derive or the debug builder API
on Formatter support pretty-printing using the alternate flag: {:#?}.
Pretty-printing with #?:
#[derive(Debug)]
struct Point {
x: i32,
y: i32,
}
let origin = Point { x: 0, y: 0 };
assert_eq!(format!("The origin is: {origin:#?}"),
"The origin is: Point {
x: 0,
y: 0,
}");Required methods
Formats the value using the given formatter.
Examples
use std::fmt;
struct Position {
longitude: f32,
latitude: f32,
}
impl fmt::Debug for Position {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
f.debug_tuple("")
.field(&self.longitude)
.field(&self.latitude)
.finish()
}
}
let position = Position { longitude: 1.987, latitude: 2.983 };
assert_eq!(format!("{position:?}"), "(1.987, 2.983)");
assert_eq!(format!("{position:#?}"), "(
1.987,
2.983,
)");Trait Implementations
Implementations on Foreign Types
1.10.0 · sourceimpl Debug for SocketAddr
impl Debug for SocketAddr
1.36.0 · sourceimpl<'a> Debug for IoSliceMut<'a>
impl<'a> Debug for IoSliceMut<'a>
1.16.0 · sourceimpl Debug for ChildStdout
impl Debug for ChildStdout
1.12.0 · sourceimpl Debug for RecvTimeoutError
impl Debug for RecvTimeoutError
1.8.0 · sourceimpl Debug for SystemTimeError
impl Debug for SystemTimeError
1.10.0 · sourceimpl Debug for FromBytesWithNulError
impl Debug for FromBytesWithNulError
1.16.0 · sourceimpl<'_, T> Debug for RwLockWriteGuard<'_, T> where
T: Debug,
impl<'_, T> Debug for RwLockWriteGuard<'_, T> where
T: Debug,
sourceimpl<'_, K, V, S> Debug for RawOccupiedEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
impl<'_, K, V, S> Debug for RawOccupiedEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
1.10.0 · sourceimpl Debug for UnixListener
impl Debug for UnixListener
1.16.0 · sourceimpl<'_, T> Debug for MutexGuard<'_, T> where
T: Debug + ?Sized,
impl<'_, T> Debug for MutexGuard<'_, T> where
T: Debug + ?Sized,
1.54.0 · sourceimpl<K, V> Debug for IntoValues<K, V> where
V: Debug,
impl<K, V> Debug for IntoValues<K, V> where
V: Debug,
1.13.0 · sourceimpl Debug for DefaultHasher
impl Debug for DefaultHasher
1.16.0 · sourceimpl<'_> Debug for StdoutLock<'_>
impl<'_> Debug for StdoutLock<'_>
sourceimpl<'_, K, V, S> Debug for RawEntryBuilder<'_, K, V, S>
impl<'_, K, V, S> Debug for RawEntryBuilder<'_, K, V, S>
sourceimpl<T> Debug for TrySendError<T>
impl<T> Debug for TrySendError<T>
sourceimpl Debug for Ipv6MulticastScope
impl Debug for Ipv6MulticastScope
1.16.0 · sourceimpl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.6.0 · sourceimpl Debug for DirBuilder
impl Debug for DirBuilder
1.7.0 · sourceimpl Debug for StripPrefixError
impl Debug for StripPrefixError
1.16.0 · sourceimpl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.16.0 · sourceimpl<T> Debug for JoinHandle<T>
impl<T> Debug for JoinHandle<T>
1.58.0 · sourceimpl Debug for FromVecWithNulError
impl Debug for FromVecWithNulError
sourceimpl<W> Debug for IntoInnerError<W> where
W: Debug,
impl<W> Debug for IntoInnerError<W> where
W: Debug,
1.16.0 · sourceimpl<'_> Debug for StderrLock<'_>
impl<'_> Debug for StderrLock<'_>
sourceimpl<'a> Debug for SocketAncillary<'a>
impl<'a> Debug for SocketAncillary<'a>
1.7.0 · sourceimpl Debug for IntoStringError
impl Debug for IntoStringError
1.16.0 · sourceimpl Debug for ChildStdin
impl Debug for ChildStdin
sourceimpl<'a> Debug for PrefixComponent<'a>
impl<'a> Debug for PrefixComponent<'a>
1.16.0 · sourceimpl Debug for RandomState
impl Debug for RandomState
1.12.0 · sourceimpl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
impl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
1.8.0 · sourceimpl<T> Debug for SyncSender<T>
impl<T> Debug for SyncSender<T>
sourceimpl<T> Debug for TryLockError<T>
impl<T> Debug for TryLockError<T>
1.57.0 · sourceimpl<'a> Debug for CommandArgs<'a>
impl<'a> Debug for CommandArgs<'a>
1.16.0 · sourceimpl Debug for BarrierWaitResult
impl Debug for BarrierWaitResult
sourceimpl<'_, K, V, S> Debug for RawEntryBuilderMut<'_, K, V, S>
impl<'_, K, V, S> Debug for RawEntryBuilderMut<'_, K, V, S>
1.5.0 · sourceimpl Debug for WaitTimeoutResult
impl Debug for WaitTimeoutResult
1.13.0 · sourceimpl<'_> Debug for Components<'_>
impl<'_> Debug for Components<'_>
sourceimpl<'_, K, V> Debug for OccupiedError<'_, K, V> where
K: Debug,
V: Debug,
impl<'_, K, V> Debug for OccupiedError<'_, K, V> where
K: Debug,
V: Debug,
1.12.0 · sourceimpl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
impl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
sourceimpl<'_, K, V, S> Debug for RawVacantEntryMut<'_, K, V, S>
impl<'_, K, V, S> Debug for RawVacantEntryMut<'_, K, V, S>
1.8.0 · sourceimpl Debug for SystemTime
impl Debug for SystemTime
1.56.0 · sourceimpl Debug for WriterPanicked
impl Debug for WriterPanicked
1.16.0 · sourceimpl Debug for ChildStderr
impl Debug for ChildStderr
sourceimpl<'scope, T> Debug for ScopedJoinHandle<'scope, T>
impl<'scope, T> Debug for ScopedJoinHandle<'scope, T>
1.10.0 · sourceimpl Debug for UnixStream
impl Debug for UnixStream
sourceimpl<W> Debug for LineWriter<W> where
W: Write + Debug,
impl<W> Debug for LineWriter<W> where
W: Write + Debug,
1.16.0 · sourceimpl<'_> Debug for SplitPaths<'_>
impl<'_> Debug for SplitPaths<'_>
sourceimpl<T> Debug for SyncOnceCell<T> where
T: Debug,
impl<T> Debug for SyncOnceCell<T> where
T: Debug,
sourceimpl Debug for BacktraceFrame
impl Debug for BacktraceFrame
1.57.0 · sourceimpl<'a> Debug for CommandEnvs<'a>
impl<'a> Debug for CommandEnvs<'a>
1.16.0 · sourceimpl<'_, T, S> Debug for SymmetricDifference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for SymmetricDifference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.10.0 · sourceimpl Debug for UnixDatagram
impl Debug for UnixDatagram
1.26.0 · sourceimpl Debug for AccessError
impl Debug for AccessError
sourceimpl<T> Debug for PoisonError<T>
impl<T> Debug for PoisonError<T>
1.16.0 · sourceimpl<'_, T> Debug for RwLockReadGuard<'_, T> where
T: Debug,
impl<'_, T> Debug for RwLockReadGuard<'_, T> where
T: Debug,
sourceimpl<'_> Debug for BorrowedFd<'_>
impl<'_> Debug for BorrowedFd<'_>
sourceimpl<'_, K, V, S> Debug for RawEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
impl<'_, K, V, S> Debug for RawEntryMut<'_, K, V, S> where
K: Debug,
V: Debug,
sourceimpl<'a, P> Debug for SplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for SplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.34.0 · sourceimpl<'a> Debug for EscapeDefault<'a>
impl<'a> Debug for EscapeDefault<'a>
1.34.0 · sourceimpl Debug for CharTryFromError
impl Debug for CharTryFromError
1.13.0 · sourceimpl Debug for BorrowMutError
impl Debug for BorrowMutError
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
1.26.0 · sourceimpl<Idx> Debug for RangeToInclusive<Idx> where
Idx: Debug,
impl<Idx> Debug for RangeToInclusive<Idx> where
Idx: Debug,
sourceimpl<Y, R> Debug for GeneratorState<Y, R> where
Y: Debug,
R: Debug,
impl<Y, R> Debug for GeneratorState<Y, R> where
Y: Debug,
R: Debug,
sourceimpl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.31.0 · sourceimpl<'a, T> Debug for RChunksExact<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for RChunksExact<'a, T> where
T: 'a + Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
sourceimpl<'a, 'b> Debug for StrSearcher<'a, 'b>
impl<'a, 'b> Debug for StrSearcher<'a, 'b>
1.17.0 · sourceimpl<'_> Debug for EncodeUtf16<'_>
impl<'_> Debug for EncodeUtf16<'_>
sourceimpl<'a> Debug for CharSearcher<'a>
impl<'a> Debug for CharSearcher<'a>
1.5.0 · sourceimpl<'a, P> Debug for RMatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RMatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
sourceimpl<'a, T, const N: usize> Debug for ArrayChunksMut<'a, T, N> where
T: 'a + Debug,
impl<'a, T, const N: usize> Debug for ArrayChunksMut<'a, T, N> where
T: 'a + Debug,
1.5.0 · sourceimpl<'a, P> Debug for MatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for MatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
1.34.0 · sourceimpl<'a> Debug for EscapeDebug<'a>
impl<'a> Debug for EscapeDebug<'a>
1.29.0 · sourceimpl<I, U> Debug for Flatten<I> where
I: Debug + Iterator,
U: Debug + Iterator,
<I as Iterator>::Item: IntoIterator,
<<I as Iterator>::Item as IntoIterator>::IntoIter == U,
<<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item,
impl<I, U> Debug for Flatten<I> where
I: Debug + Iterator,
U: Debug + Iterator,
<I as Iterator>::Item: IntoIterator,
<<I as Iterator>::Item as IntoIterator>::IntoIter == U,
<<I as Iterator>::Item as IntoIterator>::Item == <U as Iterator>::Item,
1.60.0 · sourceimpl<'a> Debug for EscapeAscii<'a>
impl<'a> Debug for EscapeAscii<'a>
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
sourceimpl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T0: Debug,
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T0: Debug,
T1: Debug,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
sourceimpl<'a, 'b> Debug for CharSliceSearcher<'a, 'b>
impl<'a, 'b> Debug for CharSliceSearcher<'a, 'b>
1.28.0 · sourceimpl Debug for NonZeroU64
impl Debug for NonZeroU64
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
1.31.0 · sourceimpl<'a, T> Debug for RChunksMut<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for RChunksMut<'a, T> where
T: 'a + Debug,
1.26.0 · sourceimpl<Idx> Debug for RangeInclusive<Idx> where
Idx: Debug,
impl<Idx> Debug for RangeInclusive<Idx> where
Idx: Debug,
1.34.0 · sourceimpl Debug for Infallible
impl Debug for Infallible
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
sourceimpl<Dyn> Debug for DynMetadata<Dyn> where
Dyn: ?Sized,
impl<Dyn> Debug for DynMetadata<Dyn> where
Dyn: ?Sized,
1.34.0 · sourceimpl Debug for NonZeroI16
impl Debug for NonZeroI16
sourceimpl<T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
1.51.0 · sourceimpl<'_, T, P> Debug for SplitInclusive<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
impl<'_, T, P> Debug for SplitInclusive<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F> Debug for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret
impl<Ret, A, B, C, D, E, F> Debug for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
1.28.0 · sourceimpl Debug for NonZeroU16
impl Debug for NonZeroU16
sourceimpl<I, G> Debug for IntersperseWith<I, G> where
I: Iterator + Debug,
G: Debug,
<I as Iterator>::Item: Debug,
impl<I, G> Debug for IntersperseWith<I, G> where
I: Iterator + Debug,
G: Debug,
<I as Iterator>::Item: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
1.28.0 · sourceimpl Debug for NonZeroUsize
impl Debug for NonZeroUsize
sourceimpl<'a, T, P> Debug for GroupByMut<'a, T, P> where
T: 'a + Debug,
impl<'a, T, P> Debug for GroupByMut<'a, T, P> where
T: 'a + Debug,
1.27.0 · sourceimpl Debug for CpuidResult
impl Debug for CpuidResult
1.9.0 · sourceimpl<H> Debug for BuildHasherDefault<H>
impl<H> Debug for BuildHasherDefault<H>
sourceimpl<T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T4, T5, T6, T7, T8, T9, T10, T11) where
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T4, T5, T6, T7, T8, T9, T10, T11) where
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.28.0 · sourceimpl<F> Debug for RepeatWith<F> where
F: Debug,
impl<F> Debug for RepeatWith<F> where
F: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
1.55.0 · sourceimpl Debug for IntErrorKind
impl Debug for IntErrorKind
sourceimpl<I> Debug for Intersperse<I> where
I: Debug + Iterator,
<I as Iterator>::Item: Clone,
<I as Iterator>::Item: Debug,
impl<I> Debug for Intersperse<I> where
I: Debug + Iterator,
<I as Iterator>::Item: Clone,
<I as Iterator>::Item: Debug,
sourceimpl<'a, const N: usize> Debug for CharArraySearcher<'a, N>
impl<'a, const N: usize> Debug for CharArraySearcher<'a, N>
1.34.0 · sourceimpl<'a> Debug for EscapeUnicode<'a>
impl<'a> Debug for EscapeUnicode<'a>
sourceimpl<'a, P> Debug for SplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for SplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.13.0 · sourceimpl Debug for BorrowError
impl Debug for BorrowError
1.31.0 · sourceimpl<'a, T> Debug for RChunksExactMut<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for RChunksExactMut<'a, T> where
T: 'a + Debug,
sourceimpl Debug for FromFloatSecsError
impl Debug for FromFloatSecsError
sourceimpl<'a> Debug for CharIndices<'a>
impl<'a> Debug for CharIndices<'a>
1.20.0 · sourceimpl Debug for ParseCharError
impl Debug for ParseCharError
1.34.0 · sourceimpl<T, F> Debug for Successors<T, F> where
T: Debug,
impl<T, F> Debug for Successors<T, F> where
T: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
1.34.0 · sourceimpl Debug for NonZeroI128
impl Debug for NonZeroI128
sourceimpl<T, const LANES: usize> Debug for Simd<T, LANES> where
T: SimdElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
impl<T, const LANES: usize> Debug for Simd<T, LANES> where
T: SimdElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
sourceimpl<T, const LANES: usize> Debug for Mask<T, LANES> where
T: MaskElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
impl<T, const LANES: usize> Debug for Mask<T, LANES> where
T: MaskElement + Debug,
LaneCount<LANES>: SupportedLaneCount,
1.50.0 · sourceimpl Debug for LayoutError
impl Debug for LayoutError
1.21.0 · sourceimpl<T> Debug for Discriminant<T>
impl<T> Debug for Discriminant<T>
sourceimpl<'a, T, const N: usize> Debug for ArrayWindows<'a, T, N> where
T: 'a + Debug,
impl<'a, T, const N: usize> Debug for ArrayWindows<'a, T, N> where
T: 'a + Debug,
1.9.0 · sourceimpl<T> Debug for UnsafeCell<T> where
T: ?Sized,
impl<T> Debug for UnsafeCell<T> where
T: ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
1.36.0 · sourceimpl Debug for RawWakerVTable
impl Debug for RawWakerVTable
1.34.0 · sourceimpl Debug for TryFromSliceError
impl Debug for TryFromSliceError
1.34.0 · sourceimpl Debug for NonZeroI64
impl Debug for NonZeroI64
1.9.0 · sourceimpl Debug for DecodeUtf16Error
impl Debug for DecodeUtf16Error
1.3.0 · sourceimpl Debug for AtomicIsize
impl Debug for AtomicIsize
1.16.0 · sourceimpl<T> Debug for AssertUnwindSafe<T> where
T: Debug,
impl<T> Debug for AssertUnwindSafe<T> where
T: Debug,
sourceimpl<T6, T7, T8, T9, T10, T11> Debug for (T6, T7, T8, T9, T10, T11) where
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T6, T7, T8, T9, T10, T11> Debug for (T6, T7, T8, T9, T10, T11) where
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Ret
sourceimpl<'f> Debug for VaListImpl<'f>
impl<'f> Debug for VaListImpl<'f>
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
sourceimpl<T7, T8, T9, T10, T11> Debug for (T7, T8, T9, T10, T11) where
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T7, T8, T9, T10, T11> Debug for (T7, T8, T9, T10, T11) where
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.16.0 · sourceimpl Debug for EscapeDefault
impl Debug for EscapeDefault
1.34.0 · sourceimpl<'a> Debug for SplitAsciiWhitespace<'a>
impl<'a> Debug for SplitAsciiWhitespace<'a>
1.31.0 · sourceimpl<'a, T> Debug for ChunksExact<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for ChunksExact<'a, T> where
T: 'a + Debug,
1.59.0 · sourceimpl Debug for TryFromCharError
impl Debug for TryFromCharError
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret
impl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Ret
sourceimpl<'a, P> Debug for RSplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RSplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.51.0 · sourceimpl<'_, T, P> Debug for SplitInclusiveMut<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
impl<'_, T, P> Debug for SplitInclusiveMut<'_, T, P> where
T: Debug,
P: FnMut(&T) -> bool,
1.51.0 · sourceimpl<'a, P> Debug for SplitInclusive<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for SplitInclusive<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
sourceimpl<'a, 'b, const N: usize> Debug for CharArrayRefSearcher<'a, 'b, N>
impl<'a, 'b, const N: usize> Debug for CharArrayRefSearcher<'a, 'b, N>
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
1.41.0 · sourceimpl<T> Debug for MaybeUninit<T>
impl<T> Debug for MaybeUninit<T>
1.28.0 · sourceimpl Debug for NonZeroU32
impl Debug for NonZeroU32
1.3.0 · sourceimpl Debug for AtomicBool
impl Debug for AtomicBool
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G> Debug for extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G> Debug for extern "C" fn(A, B, C, D, E, F, G, ...) -> Ret
1.2.0 · sourceimpl<'a, P> Debug for Matches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for Matches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret
1.20.0 · sourceimpl Debug for EscapeDebug
impl Debug for EscapeDebug
1.3.0 · sourceimpl Debug for AtomicUsize
impl Debug for AtomicUsize
1.28.0 · sourceimpl Debug for NonZeroU128
impl Debug for NonZeroU128
1.9.0 · sourceimpl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
impl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
sourceimpl<T8, T9, T10, T11> Debug for (T8, T9, T10, T11) where
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T8, T9, T10, T11> Debug for (T8, T9, T10, T11) where
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
sourceimpl<'a, T, const N: usize> Debug for ArrayChunks<'a, T, N> where
T: 'a + Debug,
impl<'a, T, const N: usize> Debug for ArrayChunks<'a, T, N> where
T: 'a + Debug,
sourceimpl<T5, T6, T7, T8, T9, T10, T11> Debug for (T5, T6, T7, T8, T9, T10, T11) where
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T5, T6, T7, T8, T9, T10, T11> Debug for (T5, T6, T7, T8, T9, T10, T11) where
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret
1.34.0 · sourceimpl Debug for TryFromIntError
impl Debug for TryFromIntError
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
1.55.0 · sourceimpl<B, C> Debug for ControlFlow<B, C> where
B: Debug,
C: Debug,
impl<B, C> Debug for ControlFlow<B, C> where
B: Debug,
C: Debug,
1.31.0 · sourceimpl<'a, T> Debug for ChunksExactMut<'a, T> where
T: 'a + Debug,
impl<'a, T> Debug for ChunksExactMut<'a, T> where
T: 'a + Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Ret
1.34.0 · sourceimpl Debug for NonZeroIsize
impl Debug for NonZeroIsize
1.34.0 · sourceimpl Debug for NonZeroI32
impl Debug for NonZeroI32
1.1.0 · sourceimpl<'a> Debug for SplitWhitespace<'a>
impl<'a> Debug for SplitWhitespace<'a>
sourceimpl<T> Debug for Saturating<T> where
T: Debug,
impl<T> Debug for Saturating<T> where
T: Debug,
sourceimpl<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
impl<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,
T10: Debug,
T11: Debug + ?Sized,
1.2.0 · sourceimpl<'a, P> Debug for RMatches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RMatches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
sourceimpl<'a, P> Debug for RSplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RSplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
sourceimpl<'a, P> Debug for RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
impl<'a, P> Debug for RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for fn(A, B, C, D, E, F, G, H, I, J) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for fn(A, B, C, D, E, F, G, H, I, J) -> Ret
sourceimpl<'a> Debug for Utf8LossyChunk<'a>
impl<'a> Debug for Utf8LossyChunk<'a>
1.20.0 · sourceimpl<T> Debug for ManuallyDrop<T> where
T: Debug + ?Sized,
impl<T> Debug for ManuallyDrop<T> where
T: Debug + ?Sized,
1.4.0 · sourceimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
1.17.0 · sourceimpl<'_, T> Debug for Difference<'_, T> where
T: Debug,
impl<'_, T> Debug for Difference<'_, T> where
T: Debug,
sourceimpl<T> Debug for LinkedList<T> where
T: Debug,
impl<T> Debug for LinkedList<T> where
T: Debug,
1.4.0 · sourceimpl<T> Debug for BinaryHeap<T> where
T: Debug,
impl<T> Debug for BinaryHeap<T> where
T: Debug,
1.12.0 · sourceimpl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug + Ord,
impl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug + Ord,
sourceimpl<T> Debug for IntoIterSorted<T> where
T: Debug,
impl<T> Debug for IntoIterSorted<T> where
T: Debug,
1.21.0 · sourceimpl<'a, I, A> Debug for Splice<'a, I, A> where
I: 'a + Debug + Iterator,
A: 'a + Debug + Allocator,
<I as Iterator>::Item: Debug,
impl<'a, I, A> Debug for Splice<'a, I, A> where
I: 'a + Debug + Iterator,
A: 'a + Debug + Allocator,
<I as Iterator>::Item: Debug,
sourceimpl<'_, B> Debug for Cow<'_, B> where
B: Debug + ToOwned + ?Sized,
<B as ToOwned>::Owned: Debug,
impl<'_, B> Debug for Cow<'_, B> where
B: Debug + ToOwned + ?Sized,
<B as ToOwned>::Owned: Debug,
1.54.0 · sourceimpl<K, V> Debug for IntoValues<K, V> where
V: Debug,
impl<K, V> Debug for IntoValues<K, V> where
V: Debug,
1.57.0 · sourceimpl Debug for TryReserveError
impl Debug for TryReserveError
sourceimpl Debug for TryReserveErrorKind
impl Debug for TryReserveErrorKind
sourceimpl<'a, T> Debug for DrainSorted<'a, T> where
T: Debug + Ord,
impl<'a, T> Debug for DrainSorted<'a, T> where
T: Debug + Ord,
sourceimpl<'_, K, V, F> Debug for DrainFilter<'_, K, V, F> where
K: Debug,
V: Debug,
F: FnMut(&K, &mut V) -> bool,
impl<'_, K, V, F> Debug for DrainFilter<'_, K, V, F> where
K: Debug,
V: Debug,
F: FnMut(&K, &mut V) -> bool,
sourceimpl<'a, T, F, A> Debug for DrainFilter<'a, T, F, A> where
T: Debug,
F: Debug + FnMut(&mut T) -> bool,
A: Debug + Allocator,
impl<'a, T, F, A> Debug for DrainFilter<'a, T, F, A> where
T: Debug,
F: Debug + FnMut(&mut T) -> bool,
A: Debug + Allocator,
1.17.0 · sourceimpl<'_, T> Debug for SymmetricDifference<'_, T> where
T: Debug,
impl<'_, T> Debug for SymmetricDifference<'_, T> where
T: Debug,
1.17.0 · sourceimpl<'_, T> Debug for Intersection<'_, T> where
T: Debug,
impl<'_, T> Debug for Intersection<'_, T> where
T: Debug,
sourceimpl Debug for _Unwind_Reason_Code
impl Debug for _Unwind_Reason_Code
sourceimpl Debug for WasmEntryAttributes
impl Debug for WasmEntryAttributes
sourceimpl<T> Debug for WithDispatch<T> where
T: Debug,
impl<T> Debug for WithDispatch<T> where
T: Debug,
sourceimpl<T> Debug for Instrumented<T> where
T: Debug,
impl<T> Debug for Instrumented<T> where
T: Debug,
sourceimpl Debug for ParseLevelFilterError
impl Debug for ParseLevelFilterError
sourceimpl<T> Debug for DebugValue<T> where
T: Debug,
impl<T> Debug for DebugValue<T> where
T: Debug,
sourceimpl Debug for SetGlobalDefaultError
impl Debug for SetGlobalDefaultError
sourceimpl<'a> Debug for Attributes<'a>
impl<'a> Debug for Attributes<'a>
sourceimpl<T> Debug for DisplayValue<T> where
T: Display,
impl<T> Debug for DisplayValue<T> where
T: Display,
sourceimpl Debug for OnceNonZeroUsize
impl Debug for OnceNonZeroUsize
sourceimpl<const CAP: usize> Debug for ArrayString<CAP>
impl<const CAP: usize> Debug for ArrayString<CAP>
sourceimpl<T> Debug for CapacityError<T>
impl<T> Debug for CapacityError<T>
sourceimpl<R> Debug for BitSel<R> where
R: BitRegister,
impl<R> Debug for BitSel<R> where
R: BitRegister,
sourceimpl<'a, T, O> Debug for RChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for RChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<R> Debug for BitEnd<R> where
R: BitRegister,
impl<R> Debug for BitEnd<R> where
R: BitRegister,
sourceimpl<'a, T, O> Debug for Windows<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for Windows<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, T, O> Debug for ChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for ChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<'_, T, O, P> Debug for Split<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for Split<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<T> Debug for MisalignError<T>
impl<T> Debug for MisalignError<T>
sourceimpl<'_, T, O, P> Debug for RSplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<R> Debug for BitMask<R> where
R: BitRegister,
impl<R> Debug for BitMask<R> where
R: BitRegister,
sourceimpl<A, O> Debug for BitArray<A, O> where
A: BitViewSized,
O: BitOrder,
impl<A, O> Debug for BitArray<A, O> where
A: BitViewSized,
O: BitOrder,
sourceimpl<'_, T, O, P> Debug for RSplit<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplit<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'_, T, O, P> Debug for SplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<R> Debug for BitIdx<R> where
R: BitRegister,
impl<R> Debug for BitIdx<R> where
R: BitRegister,
sourceimpl<M, T, O> Debug for BitPtrRange<M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
impl<M, T, O> Debug for BitPtrRange<M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
sourceimpl<'a, T, O> Debug for RChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for RChunksExactMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<R> Debug for BitIdxError<R> where
R: BitRegister,
impl<R> Debug for BitIdxError<R> where
R: BitRegister,
sourceimpl<'_, T, O, P> Debug for RSplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplitMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<T> Debug for BitSpanError<T> where
T: BitStore,
impl<T> Debug for BitSpanError<T> where
T: BitStore,
sourceimpl<'_, T, O, P> Debug for SplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'_, T, O, P> Debug for SplitInclusiveMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitInclusiveMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'a, T, O> Debug for RChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for RChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, M, T, O> Debug for BitDomain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, BitSlice<T, O>>: Referential<'a>,
Address<M, BitSlice<<T as BitStore>::Unalias, O>>: Referential<'a>,
<Address<M, BitSlice<T, O>> as Referential<'a>>::Ref: Debug,
<Address<M, BitSlice<<T as BitStore>::Unalias, O>> as Referential<'a>>::Ref: Debug,
impl<'a, M, T, O> Debug for BitDomain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, BitSlice<T, O>>: Referential<'a>,
Address<M, BitSlice<<T as BitStore>::Unalias, O>>: Referential<'a>,
<Address<M, BitSlice<T, O>> as Referential<'a>>::Ref: Debug,
<Address<M, BitSlice<<T as BitStore>::Unalias, O>> as Referential<'a>>::Ref: Debug,
sourceimpl<'a, T, O> Debug for IterZeros<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for IterZeros<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, T, O> Debug for ChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for ChunksExact<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'_, T, O, P> Debug for SplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitN<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<R> Debug for BitPos<R> where
R: BitRegister,
impl<R> Debug for BitPos<R> where
R: BitRegister,
sourceimpl<'a, T, O> Debug for RChunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for RChunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<A, O> Debug for IntoIter<A, O> where
A: BitViewSized,
O: BitOrder,
impl<A, O> Debug for IntoIter<A, O> where
A: BitViewSized,
O: BitOrder,
sourceimpl<'a, T, O> Debug for ChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
impl<'a, T, O> Debug for ChunksMut<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
<T as BitStore>::Alias: Debug,
sourceimpl<'a, T, O> Debug for IterOnes<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for IterOnes<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, M, T, O> Debug for Domain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, T>: Referential<'a>,
Address<M, [<T as BitStore>::Unalias]>: SliceReferential<'a>,
<Address<M, [<T as BitStore>::Unalias]> as Referential<'a>>::Ref: Debug,
impl<'a, M, T, O> Debug for Domain<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
Address<M, T>: Referential<'a>,
Address<M, [<T as BitStore>::Unalias]>: SliceReferential<'a>,
<Address<M, [<T as BitStore>::Unalias]> as Referential<'a>>::Ref: Debug,
sourceimpl<'a, T, O> Debug for Chunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
impl<'a, T, O> Debug for Chunks<'a, T, O> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
sourceimpl<'a, T, O, I> Debug for Splice<'a, T, O, I> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
I: Debug + Iterator<Item = bool>,
impl<'a, T, O, I> Debug for Splice<'a, T, O, I> where
T: Debug + 'a + BitStore,
O: Debug + BitOrder,
I: Debug + Iterator<Item = bool>,
sourceimpl<'_, T, O, P> Debug for SplitInclusive<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for SplitInclusive<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<'_, M, T, O> Debug for BitRef<'_, M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
impl<'_, M, T, O> Debug for BitRef<'_, M, T, O> where
M: Mutability,
T: BitStore,
O: BitOrder,
sourceimpl<'a, M, T, O> Debug for PartialElement<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
impl<'a, M, T, O> Debug for PartialElement<'a, M, T, O> where
M: Mutability,
T: 'a + BitStore,
O: BitOrder,
sourceimpl<'_, T, O, P> Debug for RSplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
impl<'_, T, O, P> Debug for RSplitNMut<'_, T, O, P> where
T: BitStore,
O: BitOrder,
P: FnMut(usize, &bool) -> bool,
sourceimpl<T> Debug for BitPtrError<T> where
T: Debug + BitStore,
impl<T> Debug for BitPtrError<T> where
T: Debug + BitStore,
sourceimpl<M, T> Debug for Address<M, T> where
M: Mutability,
T: ?Sized,
impl<M, T> Debug for Address<M, T> where
M: Mutability,
T: ?Sized,
sourceimpl<T> Debug for FmtLowerExp<T> where
T: LowerExp,
impl<T> Debug for FmtLowerExp<T> where
T: LowerExp,
sourceimpl<T> Debug for FmtLowerHex<T> where
T: LowerHex,
impl<T> Debug for FmtLowerHex<T> where
T: LowerHex,
sourceimpl<T> Debug for FmtUpperHex<T> where
T: UpperHex,
impl<T> Debug for FmtUpperHex<T> where
T: UpperHex,
sourceimpl<T> Debug for FmtPointer<T> where
T: Pointer,
impl<T> Debug for FmtPointer<T> where
T: Pointer,
sourceimpl<T> Debug for FmtDisplay<T> where
T: Display,
impl<T> Debug for FmtDisplay<T> where
T: Display,
sourceimpl<Inner> Debug for Frozen<Inner> where
Inner: Debug + Mutability,
impl<Inner> Debug for Frozen<Inner> where
Inner: Debug + Mutability,
sourceimpl<T> Debug for FmtUpperExp<T> where
T: UpperExp,
impl<T> Debug for FmtUpperExp<T> where
T: UpperExp,
sourceimpl<T> Debug for FmtList<T> where
&'a T: for<'a> IntoIterator,
<&'a T as IntoIterator>::Item: for<'a> Debug,
impl<T> Debug for FmtList<T> where
&'a T: for<'a> IntoIterator,
<&'a T as IntoIterator>::Item: for<'a> Debug,
sourceimpl<A> Debug for MapAccessDeserializer<A> where
A: Debug,
impl<A> Debug for MapAccessDeserializer<A> where
A: Debug,
sourceimpl<'a, E> Debug for BytesDeserializer<'a, E>
impl<'a, E> Debug for BytesDeserializer<'a, E>
sourceimpl<'a, E> Debug for StrDeserializer<'a, E>
impl<'a, E> Debug for StrDeserializer<'a, E>
sourceimpl<E> Debug for U128Deserializer<E>
impl<E> Debug for U128Deserializer<E>
sourceimpl<E> Debug for I128Deserializer<E>
impl<E> Debug for I128Deserializer<E>
sourceimpl<E> Debug for UsizeDeserializer<E>
impl<E> Debug for UsizeDeserializer<E>
sourceimpl<'a, E> Debug for CowStrDeserializer<'a, E>
impl<'a, E> Debug for CowStrDeserializer<'a, E>
sourceimpl<E> Debug for I32Deserializer<E>
impl<E> Debug for I32Deserializer<E>
sourceimpl<E> Debug for BoolDeserializer<E>
impl<E> Debug for BoolDeserializer<E>
sourceimpl<E> Debug for U8Deserializer<E>
impl<E> Debug for U8Deserializer<E>
sourceimpl<E> Debug for U64Deserializer<E>
impl<E> Debug for U64Deserializer<E>
sourceimpl<E> Debug for StringDeserializer<E>
impl<E> Debug for StringDeserializer<E>
sourceimpl<A> Debug for SeqAccessDeserializer<A> where
A: Debug,
impl<A> Debug for SeqAccessDeserializer<A> where
A: Debug,
sourceimpl<E> Debug for UnitDeserializer<E>
impl<E> Debug for UnitDeserializer<E>
sourceimpl<E> Debug for I16Deserializer<E>
impl<E> Debug for I16Deserializer<E>
sourceimpl<E> Debug for I8Deserializer<E>
impl<E> Debug for I8Deserializer<E>
sourceimpl<'de, E> Debug for BorrowedBytesDeserializer<'de, E>
impl<'de, E> Debug for BorrowedBytesDeserializer<'de, E>
sourceimpl<E> Debug for F64Deserializer<E>
impl<E> Debug for F64Deserializer<E>
sourceimpl<'de, I, E> Debug for MapDeserializer<'de, I, E> where
I: Iterator + Debug,
<I as Iterator>::Item: Pair,
<<I as Iterator>::Item as Pair>::Second: Debug,
impl<'de, I, E> Debug for MapDeserializer<'de, I, E> where
I: Iterator + Debug,
<I as Iterator>::Item: Pair,
<<I as Iterator>::Item as Pair>::Second: Debug,
sourceimpl<E> Debug for F32Deserializer<E>
impl<E> Debug for F32Deserializer<E>
sourceimpl<E> Debug for I64Deserializer<E>
impl<E> Debug for I64Deserializer<E>
sourceimpl<E> Debug for IsizeDeserializer<E>
impl<E> Debug for IsizeDeserializer<E>
sourceimpl<'de, E> Debug for BorrowedStrDeserializer<'de, E>
impl<'de, E> Debug for BorrowedStrDeserializer<'de, E>
sourceimpl<E> Debug for U16Deserializer<E>
impl<E> Debug for U16Deserializer<E>
sourceimpl<'a> Debug for Unexpected<'a>
impl<'a> Debug for Unexpected<'a>
sourceimpl<E> Debug for CharDeserializer<E>
impl<E> Debug for CharDeserializer<E>
sourceimpl<I, E> Debug for SeqDeserializer<I, E> where
I: Debug,
impl<I, E> Debug for SeqDeserializer<I, E> where
I: Debug,
sourceimpl<E> Debug for U32Deserializer<E>
impl<E> Debug for U32Deserializer<E>
sourceimpl<'a, L> Debug for Scope<'a, L> where
L: Debug + LookupSpan<'a>,
impl<'a, L> Debug for Scope<'a, L> where
L: Debug + LookupSpan<'a>,
sourceimpl<M, F> Debug for WithFilter<M, F> where
M: Debug,
F: Debug,
impl<M, F> Debug for WithFilter<M, F> where
M: Debug,
F: Debug,
sourceimpl<N, E, F, W> Debug for Subscriber<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
impl<N, E, F, W> Debug for Subscriber<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
sourceimpl<M> Debug for WithMaxLevel<M> where
M: Debug,
impl<M> Debug for WithMaxLevel<M> where
M: Debug,
sourceimpl<E> Debug for FormattedFields<E>
impl<E> Debug for FormattedFields<E>
sourceimpl<'a, S, N> Debug for FmtContext<'a, S, N>
impl<'a, S, N> Debug for FmtContext<'a, S, N>
sourceimpl<'a> Debug for PrettyVisitor<'a>
impl<'a> Debug for PrettyVisitor<'a>
sourceimpl<M> Debug for WithMinLevel<M> where
M: Debug,
impl<M> Debug for WithMinLevel<M> where
M: Debug,
sourceimpl<A, B> Debug for EitherWriter<A, B> where
A: Debug,
B: Debug,
impl<A, B> Debug for EitherWriter<A, B> where
A: Debug,
B: Debug,
sourceimpl<S, F, R> Debug for DynFilterFn<S, F, R>
impl<S, F, R> Debug for DynFilterFn<S, F, R>
sourceimpl<N, E, F, W> Debug for SubscriberBuilder<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
impl<N, E, F, W> Debug for SubscriberBuilder<N, E, F, W> where
N: Debug,
E: Debug,
F: Debug,
W: Debug,
sourceimpl<'a, R> Debug for SpanRef<'a, R> where
R: Debug + LookupSpan<'a>,
<R as LookupSpan<'a>>::Data: Debug,
impl<'a, R> Debug for SpanRef<'a, R> where
R: Debug + LookupSpan<'a>,
<R as LookupSpan<'a>>::Data: Debug,
sourceimpl<'a, F> Debug for FieldFnVisitor<'a, F>
impl<'a, F> Debug for FieldFnVisitor<'a, F>
sourceimpl<'a> Debug for JsonVisitor<'a>
impl<'a> Debug for JsonVisitor<'a>
sourceimpl<'a> Debug for ExtensionsMut<'a>
impl<'a> Debug for ExtensionsMut<'a>
sourceimpl<'a> Debug for DefaultVisitor<'a>
impl<'a> Debug for DefaultVisitor<'a>
sourceimpl<'a> Debug for Extensions<'a>
impl<'a> Debug for Extensions<'a>
sourceimpl<'a, R> Debug for ScopeFromRoot<'a, R> where
R: LookupSpan<'a>,
impl<'a, R> Debug for ScopeFromRoot<'a, R> where
R: LookupSpan<'a>,
sourceimpl<D, V> Debug for VisitDelimited<D, V> where
D: Debug,
V: Debug,
impl<D, V> Debug for VisitDelimited<D, V> where
D: Debug,
V: Debug,
sourceimpl<'a, R> Debug for FromRoot<'a, R> where
R: Debug + LookupSpan<'a>,
impl<'a, R> Debug for FromRoot<'a, R> where
R: Debug + LookupSpan<'a>,
sourceimpl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
impl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
sourceimpl Debug for CaptureLocations
impl Debug for CaptureLocations
sourceimpl<'c, 't> Debug for SubCaptureMatches<'c, 't>
impl<'c, 't> Debug for SubCaptureMatches<'c, 't>
sourceimpl Debug for SetMatchesIntoIter
impl Debug for SetMatchesIntoIter
sourceimpl Debug for SetMatchesIntoIter
impl Debug for SetMatchesIntoIter
sourceimpl<'r> Debug for CaptureNames<'r>
impl<'r> Debug for CaptureNames<'r>
sourceimpl<'r> Debug for CaptureNames<'r>
impl<'r> Debug for CaptureNames<'r>
sourceimpl<'c, 't> Debug for SubCaptureMatches<'c, 't>
impl<'c, 't> Debug for SubCaptureMatches<'c, 't>
sourceimpl Debug for CaptureLocations
impl Debug for CaptureLocations
sourceimpl<'a> Debug for SetMatchesIter<'a>
impl<'a> Debug for SetMatchesIter<'a>
sourceimpl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
impl<'a, R> Debug for ReplacerRef<'a, R> where
R: Debug + ?Sized,
sourceimpl<'a> Debug for SetMatchesIter<'a>
impl<'a> Debug for SetMatchesIter<'a>
sourceimpl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'r, 't> Debug for CaptureMatches<'r, 't>
sourceimpl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'r, 't> Debug for CaptureMatches<'r, 't>
sourceimpl<'a> Debug for ClassBytesIter<'a>
impl<'a> Debug for ClassBytesIter<'a>
sourceimpl Debug for ClassSetBinaryOp
impl Debug for ClassSetBinaryOp
sourceimpl Debug for TranslatorBuilder
impl Debug for TranslatorBuilder
sourceimpl Debug for ClassUnicodeKind
impl Debug for ClassUnicodeKind
sourceimpl Debug for ClassUnicodeOpKind
impl Debug for ClassUnicodeOpKind
sourceimpl<'a> Debug for ClassUnicodeIter<'a>
impl<'a> Debug for ClassUnicodeIter<'a>
sourceimpl Debug for ClassUnicodeRange
impl Debug for ClassUnicodeRange
sourceimpl Debug for UnicodeWordError
impl Debug for UnicodeWordError
sourceimpl Debug for SpecialLiteralKind
impl Debug for SpecialLiteralKind
sourceimpl Debug for ClassSetBinaryOpKind
impl Debug for ClassSetBinaryOpKind
sourceimpl<S> Debug for AhoCorasick<S> where
S: Debug + StateID,
impl<S> Debug for AhoCorasick<S> where
S: Debug + StateID,
sourceimpl<'a, 'b, S> Debug for FindOverlappingIter<'a, 'b, S> where
S: Debug + StateID,
impl<'a, 'b, S> Debug for FindOverlappingIter<'a, 'b, S> where
S: Debug + StateID,
sourceimpl Debug for AhoCorasickBuilder
impl Debug for AhoCorasickBuilder
sourceimpl<'h, 'n> Debug for FindRevIter<'h, 'n>
impl<'h, 'n> Debug for FindRevIter<'h, 'n>
sourceimpl<T, S> Debug for PremultipliedByteClass<T, S> where
T: Debug + AsRef<[S]>,
S: Debug + StateID,
impl<T, S> Debug for PremultipliedByteClass<T, S> where
T: Debug + AsRef<[S]>,
S: Debug + StateID,
sourceimpl Debug for Style
impl Debug for Style
Styles have a special Debug implementation that only shows the fields that
are set. Fields that haven’t been touched aren’t included in the output.
This behaviour gets bypassed when using the alternate formatting mode
format!("{:#?}").
use ansi_term::Colour::{Red, Blue};
assert_eq!("Style { fg(Red), on(Blue), bold, italic }",
format!("{:?}", Red.on(Blue).bold().italic()));sourceimpl<'a, S> Debug for ANSIGenericStrings<'a, S> where
S: 'a + Debug + ToOwned + PartialEq<S> + ?Sized,
<S as ToOwned>::Owned: Debug,
impl<'a, S> Debug for ANSIGenericStrings<'a, S> where
S: 'a + Debug + ToOwned + PartialEq<S> + ?Sized,
<S as ToOwned>::Owned: Debug,
sourceimpl<'a, S> Debug for ANSIGenericString<'a, S> where
S: 'a + Debug + ToOwned + ?Sized,
<S as ToOwned>::Owned: Debug,
impl<'a, S> Debug for ANSIGenericString<'a, S> where
S: 'a + Debug + ToOwned + ?Sized,
<S as ToOwned>::Owned: Debug,
sourceimpl<'a> Debug for RecordBuilder<'a>
impl<'a> Debug for RecordBuilder<'a>
sourceimpl<'a> Debug for MetadataBuilder<'a>
impl<'a> Debug for MetadataBuilder<'a>
sourceimpl Debug for CompactFormatter
impl Debug for CompactFormatter
sourceimpl<'a> Debug for PrettyFormatter<'a>
impl<'a> Debug for PrettyFormatter<'a>
sourceimpl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
sourceimpl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
impl<'_, K, V> Debug for OccupiedEntry<'_, K, V> where
K: Debug,
V: Debug,
sourceimpl<K, V> Debug for IntoValues<K, V> where
V: Debug,
impl<K, V> Debug for IntoValues<K, V> where
V: Debug,
sourceimpl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
sourceimpl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
impl<'_, K, V> Debug for VacantEntry<'_, K, V> where
K: Debug,
sourceimpl<'_, T, S1, S2> Debug for SymmetricDifference<'_, T, S1, S2> where
T: Debug + Eq + Hash,
S1: BuildHasher,
S2: BuildHasher,
impl<'_, T, S1, S2> Debug for SymmetricDifference<'_, T, S1, S2> where
T: Debug + Eq + Hash,
S1: BuildHasher,
S2: BuildHasher,
sourceimpl<'_, T, S, A> Debug for VacantEntry<'_, T, S, A> where
T: Debug,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for VacantEntry<'_, T, S, A> where
T: Debug,
A: Allocator + Clone,
sourceimpl<'_, '_, K, Q, V, S, A> Debug for VacantEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
A: Allocator + Clone,
impl<'_, '_, K, Q, V, S, A> Debug for VacantEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for Intersection<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for Intersection<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for OccupiedError<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for OccupiedError<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for Union<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for Union<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<K, V, A> Debug for IntoValues<K, V, A> where
V: Debug,
A: Allocator + Clone,
impl<K, V, A> Debug for IntoValues<K, V, A> where
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for OccupiedEntry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for OccupiedEntry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<K, V, S, A> Debug for HashMap<K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<K, V, S, A> Debug for HashMap<K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawEntryBuilder<'_, K, V, S, A> where
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawEntryBuilder<'_, K, V, S, A> where
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawEntryBuilderMut<'_, K, V, S, A> where
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawEntryBuilderMut<'_, K, V, S, A> where
A: Allocator + Clone,
sourceimpl<'_, '_, K, Q, V, S, A> Debug for EntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
impl<'_, '_, K, Q, V, S, A> Debug for EntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, '_, K, Q, V, S, A> Debug for OccupiedEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
impl<'_, '_, K, Q, V, S, A> Debug for OccupiedEntryRef<'_, '_, K, Q, V, S, A> where
K: Borrow<Q>,
Q: Debug + ?Sized,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawVacantEntryMut<'_, K, V, S, A> where
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawVacantEntryMut<'_, K, V, S, A> where
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawOccupiedEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawOccupiedEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for VacantEntry<'_, K, V, S, A> where
K: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for VacantEntry<'_, K, V, S, A> where
K: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, A> Debug for Drain<'_, K, V, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, A> Debug for Drain<'_, K, V, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for SymmetricDifference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for SymmetricDifference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for Entry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for Entry<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for OccupiedEntry<'_, T, S, A> where
T: Debug,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for OccupiedEntry<'_, T, S, A> where
T: Debug,
A: Allocator + Clone,
sourceimpl<'_, K, V, S, A> Debug for RawEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
impl<'_, K, V, S, A> Debug for RawEntryMut<'_, K, V, S, A> where
K: Debug,
V: Debug,
A: Allocator + Clone,
sourceimpl<'_, T, S, A> Debug for Difference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
impl<'_, T, S, A> Debug for Difference<'_, T, S, A> where
T: Debug + Eq + Hash,
S: BuildHasher,
A: Allocator + Clone,
sourceimpl Debug for pthread_rwlock_t
impl Debug for pthread_rwlock_t
sourceimpl Debug for __c_anonymous_sockaddr_can_tp
impl Debug for __c_anonymous_sockaddr_can_tp
sourceimpl Debug for input_keymap_entry
impl Debug for input_keymap_entry
sourceimpl Debug for posix_spawn_file_actions_t
impl Debug for posix_spawn_file_actions_t
sourceimpl Debug for pthread_rwlockattr_t
impl Debug for pthread_rwlockattr_t
sourceimpl Debug for user_regs_struct
impl Debug for user_regs_struct
sourceimpl Debug for user_fpregs_struct
impl Debug for user_fpregs_struct
sourceimpl Debug for ff_periodic_effect
impl Debug for ff_periodic_effect
sourceimpl Debug for pthread_mutexattr_t
impl Debug for pthread_mutexattr_t
sourceimpl Debug for fanotify_event_metadata
impl Debug for fanotify_event_metadata
sourceimpl Debug for ff_rumble_effect
impl Debug for ff_rumble_effect
sourceimpl Debug for ptrace_peeksiginfo_args
impl Debug for ptrace_peeksiginfo_args
sourceimpl Debug for ptrace_syscall_info
impl Debug for ptrace_syscall_info
sourceimpl Debug for posix_spawnattr_t
impl Debug for posix_spawnattr_t
sourceimpl Debug for fanotify_response
impl Debug for fanotify_response
sourceimpl Debug for pthread_condattr_t
impl Debug for pthread_condattr_t
sourceimpl Debug for sock_extended_err
impl Debug for sock_extended_err
sourceimpl Debug for sockaddr_storage
impl Debug for sockaddr_storage
sourceimpl Debug for ff_condition_effect
impl Debug for ff_condition_effect
sourceimpl Debug for signalfd_siginfo
impl Debug for signalfd_siginfo
sourceimpl Debug for ff_constant_effect
impl Debug for ff_constant_effect
sourceimpl Debug for uinput_abs_setup
impl Debug for uinput_abs_setup
sourceimpl Debug for seccomp_notif_sizes
impl Debug for seccomp_notif_sizes
sourceimpl Debug for uinput_ff_upload
impl Debug for uinput_ff_upload
sourceimpl<'a> Debug for SerializeRecord<'a>
impl<'a> Debug for SerializeRecord<'a>
sourceimpl<S> Debug for SerdeMapVisitor<S> where
S: Debug + SerializeMap,
<S as SerializeMap>::Error: Debug,
impl<S> Debug for SerdeMapVisitor<S> where
S: Debug + SerializeMap,
<S as SerializeMap>::Error: Debug,
sourceimpl<'a> Debug for SerializeEvent<'a>
impl<'a> Debug for SerializeEvent<'a>
sourceimpl<'a> Debug for SerializeAttributes<'a>
impl<'a> Debug for SerializeAttributes<'a>
sourceimpl<'a> Debug for SerializeId<'a>
impl<'a> Debug for SerializeId<'a>
sourceimpl<'a> Debug for SerializeMetadata<'a>
impl<'a> Debug for SerializeMetadata<'a>
sourceimpl<S> Debug for SerdeStructVisitor<S> where
S: Debug + SerializeStruct,
<S as SerializeStruct>::Error: Debug,
impl<S> Debug for SerdeStructVisitor<S> where
S: Debug + SerializeStruct,
<S as SerializeStruct>::Error: Debug,
sourceimpl<'a, T> Debug for SerializeFieldMap<'a, T> where
T: Debug,
impl<'a, T> Debug for SerializeFieldMap<'a, T> where
T: Debug,
sourceimpl<'a> Debug for SerializeLevel<'a>
impl<'a> Debug for SerializeLevel<'a>
sourceimpl<'a> Debug for SerializeFieldSet<'a>
impl<'a> Debug for SerializeFieldSet<'a>
sourceimpl<T, C> Debug for OwnedEntry<T, C> where
T: Debug,
C: Config,
impl<T, C> Debug for OwnedEntry<T, C> where
T: Debug,
C: Config,
sourceimpl<T> Debug for CachedThreadLocal<T> where
T: Send + Debug,
impl<T> Debug for CachedThreadLocal<T> where
T: Send + Debug,
sourceimpl<T> Debug for ThreadLocal<T> where
T: Send + Debug,
impl<T> Debug for ThreadLocal<T> where
T: Send + Debug,
sourceimpl Debug for CollectionAllocErr
impl Debug for CollectionAllocErr
sourceimpl<I> Debug for DelayedFormat<I> where
I: Debug,
impl<I> Debug for DelayedFormat<I> where
I: Debug,
sourceimpl<'a> Debug for StrftimeItems<'a>
impl<'a> Debug for StrftimeItems<'a>
sourceimpl Debug for NaiveDateTime
impl Debug for NaiveDateTime
The Debug output of the naive date and time dt is the same as
dt.format("%Y-%m-%dT%H:%M:%S%.f").
The string printed can be readily parsed via the parse method on str.
It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)
Example
use chrono::NaiveDate;
let dt = NaiveDate::from_ymd(2016, 11, 15).and_hms(7, 39, 24);
assert_eq!(format!("{:?}", dt), "2016-11-15T07:39:24");Leap seconds may also be used.
let dt = NaiveDate::from_ymd(2015, 6, 30).and_hms_milli(23, 59, 59, 1_500);
assert_eq!(format!("{:?}", dt), "2015-06-30T23:59:60.500");sourceimpl Debug for IsoWeek
impl Debug for IsoWeek
The Debug output of the ISO week w is the same as
d.format("%G-W%V")
where d is any NaiveDate value in that week.
Example
use chrono::{NaiveDate, Datelike};
assert_eq!(format!("{:?}", NaiveDate::from_ymd(2015, 9, 5).iso_week()), "2015-W36");
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 3).iso_week()), "0000-W01");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(9999, 12, 31).iso_week()), "9999-W52");ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 2).iso_week()), "-0001-W52");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(10000, 12, 31).iso_week()), "+10000-W52");sourceimpl Debug for NaiveTime
impl Debug for NaiveTime
The Debug output of the naive time t is the same as
t.format("%H:%M:%S%.f").
The string printed can be readily parsed via the parse method on str.
It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)
Example
use chrono::NaiveTime;
assert_eq!(format!("{:?}", NaiveTime::from_hms(23, 56, 4)), "23:56:04");
assert_eq!(format!("{:?}", NaiveTime::from_hms_milli(23, 56, 4, 12)), "23:56:04.012");
assert_eq!(format!("{:?}", NaiveTime::from_hms_micro(23, 56, 4, 1234)), "23:56:04.001234");
assert_eq!(format!("{:?}", NaiveTime::from_hms_nano(23, 56, 4, 123456)), "23:56:04.000123456");Leap seconds may also be used.
assert_eq!(format!("{:?}", NaiveTime::from_hms_milli(6, 59, 59, 1_500)), "06:59:60.500");sourceimpl Debug for ParseWeekdayError
impl Debug for ParseWeekdayError
sourceimpl<T> Debug for LocalResult<T> where
T: Debug,
impl<T> Debug for LocalResult<T> where
T: Debug,
sourceimpl Debug for NaiveDate
impl Debug for NaiveDate
The Debug output of the naive date d is the same as
d.format("%Y-%m-%d").
The string printed can be readily parsed via the parse method on str.
Example
use chrono::NaiveDate;
assert_eq!(format!("{:?}", NaiveDate::from_ymd(2015, 9, 5)), "2015-09-05");
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 1)), "0000-01-01");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(9999, 12, 31)), "9999-12-31");ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.
assert_eq!(format!("{:?}", NaiveDate::from_ymd( -1, 1, 1)), "-0001-01-01");
assert_eq!(format!("{:?}", NaiveDate::from_ymd(10000, 12, 31)), "+10000-12-31");